package com.effectivcrm.domain.ui;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
import com.thoughtworks.xstream.annotations.XStreamImplicit;

import groovy.transform.ToString;
@JsonInclude(JsonInclude.Include.NON_NULL)
@ToString(includeNames=true)

@XStreamAlias("form")
class Form implements Serializable{
	@XStreamAsAttribute
	String id;
	@XStreamAsAttribute
	String name;
	@XStreamAsAttribute
	String action;
	@XStreamAsAttribute
	String method;
	
	//NEW, VIEW, EDIT, UPDATE - default NEW
	@XStreamAsAttribute
	String state;
	@XStreamAsAttribute
	String page;
	@XStreamAsAttribute
	String parent;
	
	@XStreamImplicit
	List<Section> sections;
	
	@XStreamAsAttribute
	ButtonBar buttonBar;
	
	@XStreamAsAttribute
	String validIcon;
	@XStreamAsAttribute
	String invalidIcon;
	@XStreamAsAttribute
	String validatingIcon;
	
}

